package br.gov.ms.tce.modelo.bean;

import javax.persistence.Column;
import javax.persistence.Embeddable;


/**
*  @class EnderecoId
 * @author Anderson Paulino
 * @date 27/05/2011
 *
 */
@Embeddable
public class EnderecoId implements java.io.Serializable {

	/**
	 * serialVersionUID
	 */
	private static final long serialVersionUID = 7403534231314706439L;
	private int codPessoa;
	private int codTipoEndereco;

	public EnderecoId() {
	}

	public EnderecoId(int cdPessoa, int cdTipEnd) {
		this.codPessoa = cdPessoa;
		this.codTipoEndereco = cdTipEnd;
	}

	@Column(name = "cod_pessoa", nullable = false)
	public int getCodPessoa() {
		return this.codPessoa;
	}

	public void setCodPessoa(int codPessoa) {
		this.codPessoa = codPessoa;
	}

	@Column(name = "cod_tipo_endereco", nullable = false)
	public int getCodTipoEndereco() {
		return this.codTipoEndereco;
	}

	public void setCodTipoEndereco(int codTipoEndereco) {
		this.codTipoEndereco = codTipoEndereco;
	}

	public boolean equals(Object other) {
		if ((this == other))
			return true;
		if ((other == null))
			return false;
		if (!(other instanceof EnderecoId))
			return false;
		EnderecoId castOther = (EnderecoId) other;

		return (this.getCodPessoa() == castOther.getCodPessoa())
				&& (this.getCodTipoEndereco() == castOther.getCodTipoEndereco());
	}

	public int hashCode() {
		int result = 17;

		result = 37 * result + this.getCodPessoa();
		result = 37 * result + this.getCodTipoEndereco();
		return result;
	}

}
